package com.sudoctor.dao.impl;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.ResultSetExtractor;

import com.sudoctor.dao.MunicipioDAO;
import com.sudoctor.entity.Municipio;

public class MunicipioDaoImpl  extends GenericDaoImpl<Municipio> implements MunicipioDAO<Municipio>
{
	
	
	
	public List<Municipio> obtenerMunicipios(int idEstado)
	{

		StringBuffer sb = new StringBuffer();

		sb.append(" select municipios.mun_idmunicipioSepomex, municipios.mun_descripcion from municipios where municipios.mun_estadoid = ");
		sb.append(" ? ");

		

		return getJdbcTemplate().query(sb.toString(),
				new Object[] { 
			idEstado
		},
			new ResultSetExtractor<List<Municipio>>(){  
		    @Override  
		     public List<Municipio> extractData(ResultSet rs) throws SQLException,  
		            DataAccessException {

		    	ArrayList<Municipio> lstMunicipios = new ArrayList<Municipio>();

		        while(rs.next()){
		        	Municipio objMunicipio = new Municipio();
		        	objMunicipio.setMun_idmunicipioSepomex(rs.getInt("municipios.mun_idmunicipioSepomex"));
		        	objMunicipio.setMun_descripcion(rs.getString("municipios.mun_descripcion"));
		        	lstMunicipios.add(objMunicipio);
		        }
		        return lstMunicipios;  
		        }  
		    });
	}
	
}
